These subsystems should be connected only through the interfaces provided by other subsystems. This means that they can be individually enabled and disabled using the module loader.
Java Code generation, Reverse engineering - see <<Subsystem>> Java - Code Generation and Reverse Engineering.
Other languages - Code generation, Reverse engineering - see <<Subsystem>> Other source languages (C++, Python, etc).
Critics and checklists - see <<Subsystem>> Critics and other cognitive tools.
OCL - see <<Subsystem>> OCL.